﻿/// <reference path="/Scripts/Helpers/Functions.js" />
/// <reference path="/Scripts/jquery-1.7.2.js" />
/// <reference path="/Scripts/jquery.mobile-1.1.0.js" />

// namespace Connexion
var Connexion = (function()
{
    var my = {},
    _login = "",
    _password = "",
    _loginOK = false,
    _passwordOK = false;

    my.loaded = function()
    {
        initEvents();
    };

    // INITIALISE LES EVENEMENTS DE LA PAGE
    function initEvents()
    {
        // ÉVÈNEMENT : APPUI SUR LE BOUTON CONNEXION
        $("#btn_connexion").click(function()
        {
            $("#content").slideUp("slow");
            $("#utilisateurs").slideDown("slow");
        });

        $("#utilisateur01").data({ login: "sebastien", password: "sebastien" });
        $("#utilisateur02").data({ login: "utilisateur", password: "utilisateur" });

        $(".utilisateur").click(function()
        {
            _login = $.data(this, "login");
            _password = $.data(this, "password");
            checkIdentity(_login, _password);
        });
    }

    // VERIFIE L'IDENTIFICATION D'UN UTILISATEUR
    function checkIdentity(login, password)
    {
        /// <summary>Vérifie l'identification d'un utilisateur</summary>
        /// <param name="login" type="String">Le login utilisateur</param>
        /// <param name="password" type="String">Le mot de passe utilisateur</param>

        //if (typeof console !== "undefined") console.log("checkIdentity() :" + login + ";" + password); // Debugage console

        var msg = "";

        $.mobile.showPageLoadingMsg(); // Loading
        //$(".loading").css("visibility", "visible"); // Loading

        $.ajax(
        {
            url: "/Connexion/Validation",
            type: "POST",
            data: JSON.stringify({ Login: login, Password: password }),
            dataType: 'json',
            contentType: "application/json; charset=utf-8",
            success: function(data, textStatus, jqXHR)
            {
                $.mobile.hidePageLoadingMsg();
                if (typeof console !== "undefined") console.log("Retour : id = " + data[1]); // Debugage console
                if (data == null)
                {
                    // Envoi d'un message d'erreur
                    msg += "Le résultat est null";
                    Functions.leadError(msg);
                    return;
                }
                if (data[0] == "-1")
                {
                    // Envoi d'un message d'erreur
                    msg += data[1];
                    Functions.leadError(msg);
                    return;
                }
                if (data[0] == "0")
                {
                    // Compte inexistant
                    msg += "Compte inexistant";
                    Functions.leadError(msg);
                }
                else
                {
                    // Redirection vers MonCompte

                    window.location.href = "/Accueil";
                }
            },
            error: function(jqXHR, textStatus, errorThrown)
            {
                if (typeof console !== "undefined") console.log("Erreur : " + textStatus); // Debugage console

                $.mobile.hidePageLoadingMsg();
                Functions.leadError(textStatus);
            }
        });
    }

    function getLogins()
    {
        _login = "sebastien";
        _password = "sebastien";
        _loginOK = _passwordOK = true;

        if (_loginOK && _passwordOK)
            checkIdentity(_login, _password);
    }

    return my;
} ());

Functions.addLoadListener(Connexion.loaded);

$(document).bind("mobileinit", function()
{
    //apply overrides here
    $.mobile.defaultPageTransition = "flow";
});